package com.mycompany.myapp.dao;

import com.mycompany.myapp.dao.JoueurDao;
import com.mycompany.myapp.dto.Joueur;
import com.mycompany.myapp.dto.JoueurPk;
import com.mycompany.myapp.exceptions.JoueurDaoException;
import java.util.List;

public interface JoueurDao
{
	/**
	 * Method 'insert'
	 * 
	 * @param dto
	 * @return JoueurPk
	 */
	public JoueurPk insert(Joueur dto);

	/** 
	 * Updates a single row in the joueur table.
	 */
	public void update(JoueurPk pk, Joueur dto) throws JoueurDaoException;

	/** 
	 * Deletes a single row in the joueur table.
	 */
	public void delete(JoueurPk pk) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'idJoueur = :idJoueur'.
	 */
	public Joueur findByPrimaryKey(int idJoueur) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria ''.
	 */
	public List<Joueur> findAll() throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'idJoueur = :idJoueur'.
	 */
	public List<Joueur> findWhereIdJoueurEquals(int idJoueur) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'motDePasse = :motDePasse'.
	 */
	public List<Joueur> findWhereMotDePasseEquals(String motDePasse) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'login = :login'.
	 */
	public List<Joueur> findWhereLoginEquals(String login) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'vieActuelleJ = :vieActuelleJ'.
	 */
	public List<Joueur> findWhereVieActuelleJEquals(int vieActuelleJ) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'vieMaxJ = :vieMaxJ'.
	 */
	public List<Joueur> findWhereVieMaxJEquals(int vieMaxJ) throws JoueurDaoException;

	/** 
	 * Returns all rows from the joueur table that match the criteria 'lieuActuelJ = :lieuActuelJ'.
	 */
	public List<Joueur> findWhereLieuActuelJEquals(int lieuActuelJ) throws JoueurDaoException;

	/** 
	 * Returns the rows from the joueur table that matches the specified primary-key value.
	 */
	public Joueur findByPrimaryKey(JoueurPk pk) throws JoueurDaoException;

}
